package com.kime.email.spring.service;

/**
 * 集成邮件服务
 */
public interface MailService {

    /**
     * 发送简单邮件
     * @param to      收件人
     * @param subject 邮件主题
     * @param text    邮件文本
     */
    void sendSimpleEmail(String to, String subject, String text);

    /**
     * 发送 MimeMessagePreparator 创建的邮件
     * @param to      收件人
     * @param subject 邮件主题
     * @param content 邮件内容
     */
    void sendMimeMessagePreparatorEmail(String to, String subject, String content);

    /**
     * 发送 HTML 格式的邮件
     * @param to      收件人
     * @param subject 邮件主题
     * @param content 邮件内容
     */
    void sendHtmlEmail(String to, String subject, String content);

    /**
     * 发送带有附件的邮件
     * @param to       收件人
     * @param subject  邮件主题
     * @param content  邮件内容
     * @param filePath 附件文件路径
     */
    void sendAttachmentEmail(String to, String subject, String content, String filePath);

    /**
     * 发送带有静态资源的邮件
     * @param to           收件人
     * @param subject      邮件主题
     * @param content      邮件内容
     * @param resourcePath 资源路径
     * @param resourceId   资源Id
     */
    void sendInLineResourceEmail(String to, String subject, String content, String resourcePath, String resourceId);

    /**
     * 发送模板邮件
     * @param to           收件人
     * @param subject      邮件主题
     * @param emailContent 邮件内容
     */
    boolean sendTemplateEmail(String to, String subject, String emailContent);
}
